//package com.web.gatewayservice.filter;
//
//import org.springframework.cloud.gateway.filter.GatewayFilterChain;
//import org.springframework.cloud.gateway.filter.GlobalFilter;
//import org.springframework.core.Ordered;
//import org.springframework.core.io.buffer.DataBuffer;
//import org.springframework.http.HttpStatus;
//import org.springframework.http.server.reactive.ServerHttpRequest;
//import org.springframework.http.server.reactive.ServerHttpResponse;
//import org.springframework.stereotype.Component;
//import org.springframework.web.server.ServerWebExchange;
//import reactor.core.publisher.Mono;
//
//
///**
// * 自定义全局过滤器，验证令牌
// */
//@Component
//public class TokenValidateFilter implements GlobalFilter, Ordered {
//
//    /**
//     * 过滤器，验证token参数
//     */
//    @Override
//    public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
//        //获得请求和响应对象
//        ServerHttpRequest request = exchange.getRequest();
//        ServerHttpResponse response = exchange.getResponse();
//        //获得token参数
//        String token = request.getQueryParams().getFirst("token");
//        if("123456".equals(token)){
//            //令牌正确就放行请求
//            return chain.filter(exchange);
//        }
//        //令牌不正确就给用户返回验证失败消息
//        response.setStatusCode(HttpStatus.UNAUTHORIZED);
//        DataBuffer data = response.bufferFactory().wrap("Request is UNAUTHORIZED".getBytes());
//        return response.writeWith(Mono.just(data));
//    }
//
//    @Override
//    public int getOrder() {
//        return 0;
//    }
//}
